package com.threegroup.common.dao;


import com.threegroup.common.entity.UserEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * 用户信息
 *
 * @author kohlerm kohlerm@163.com
 * @since 1.0.0 2022-12-16
 */
@Mapper
public interface UserDao{

    UserEntity getUserByUserId(Long userId);

    UserEntity getUserByMobile(String mobile);

    /**
     * 根据openId 获取登录用户信息
     * @return
     */
    UserEntity getUserByOpenId(@Param("openId") String openId);

    /**
     * 保存用户信息
     * @param user
     */
    void save(UserEntity user);

    /**
     * 更新用户信息
     * @param user
     */
    void updateById(UserEntity user);

    /**
     * 根据用户id查询用户信息
     * @param userId
     * @return
     */
    UserEntity selectById(@Param("userId") Long userId);
}